package day17;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class TestList2 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<String>();
        list.add("孙悟空");
        list.add("猪八戒");
        list.add("沙师弟");
        list.add("白龙马");
        System.out.println(list);

        //遍历数组使用for循环
        System.out.println("------方案一-------");
        for (int i = 0 ; i<list.size() ; i++){
            System.out.println(list.get(i));
        }
        System.out.println("-----方案二----");
        //方法2：增强for循环
        //格式： for（数据类型 每轮遍历元素名：被遍历的集合）
        for(String s : list){
            System.out.println(s);
        }

        //方案3，从父接口中继承的迭代器
        Iterator<String> it = list.iterator();
        while(it.hasNext()) {
            System.out.println(it.next());
        }

        //方案4.使用List自己的iterator
        System.out.println("------方案四-----");
        ListIterator<String> it2 = list.listIterator();
        while(it2.hasNext());{
            System.out.println(it2.next());
        }
    }
}
